package com.hoshiicloud.lessee.feign;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hoshiicloud.common.query.OmnipotentWrapper;
import com.hoshiicloud.common.rpc.Response;
import com.hoshiicloud.lessee.feign.hystrix.LesseeUserFeignServiceFallback;
import com.hoshiicloud.user.dto.userCenter.MemberDto;
import com.hoshiicloud.user.entity.company.AttachmentType;
import com.hoshiicloud.user.entity.company.Member;
import com.hoshiicloud.user.entity.store.PlatStore;
import com.hoshiicloud.user.entity.visitors.Visitors;
import com.hoshiicloud.user.param.PlatStoreConsumerPageParam;
import com.hoshiicloud.user.param.PlatStoreQueryParam;
import com.hoshiicloud.user.param.company.AttachmentTypePageParam;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author qry
 * @date 2019/8/12 17:28
 */
@FeignClient(name = "hoshiicloud-user", fallback = LesseeUserFeignServiceFallback.class)
public interface LesseeUserFeignService {


    /**
     *  201909.11 17:19  qry
     *  获取证件类型 分页列表
     **/
    @PostMapping("/company/attachment-type/getPage")
    Response<Page<AttachmentType>> getAttachmentTypePage(@RequestBody AttachmentTypePageParam param);

    /**
     *  201909.11 18:51 qry
     *  新增证件信息
     **/
    @PostMapping("/company/attachment-type/save")
    Response<AttachmentType>  addAttachmentType(@RequestBody AttachmentType entity);

    /**
     *  201909.11 18:51 qry
     *  更新证件信息
     **/
    @PutMapping("/company/attachment-type/update")
    Response<Boolean> updateAttachmentType(@RequestBody AttachmentType entity);


    /**
     *  201909.11 18:51 qry
     *  删除证件信息
     **/
    @DeleteMapping("/company/attachment-type/delete/{id}")
    Response<Boolean> deleteupdateAttachmentType(@PathVariable("id") Long id);

    // ----------------------------------------↓visitors↓------------------------------------

    /**
     *  批量查询访客数
     * @param param 查询条件
     * @return 访客数集合
     */
    @PostMapping("/visitors/visitors/queryBatch")
    Response<List<Visitors>> queryVisitorsBatch(@RequestBody List<OmnipotentWrapper> param);
}
